package javaCode.chapter06.本章作业;

public class Homework11 {

    public static void main(String[] args) {

        int times = 5;
        Circle c = new Circle();
        PassObject p = new PassObject();
        p.printAreas(c, times);
    }
}

/*
讲对象作为参数传递给方法
1、定义一个Circle类，包含一个double型的radius属性代表圆的半径，findArea()方法返回圆的面积
2、定义一个类PassObject，在类中定义一个方法printAreas()，该方法的定义如下：public void printAreas(Circle c,int times)
3、在printAreas方法中打印输出1到times之间的每个整数半径值，以及对应的面积。
例如，times为5，则输出半径1，2，3，4，5，以及对应的圆面积
4、在main方法中调用printAreas()方法，调用完毕后输出当前半径值

 */
class Circle {
    double r;

//    public Circle(double r) {
//        this.r = r;
//    }

    public double findArea() {
        return Math.PI * r * r;
    }

    //添加方法setRadius，修改对象的半径值
    public void setRadius(double r){
        this.r = r;
    }
}

class PassObject {

    public void printAreas(Circle c, int times) {

        System.out.println("r \t\t Areas");
        for (int i = 1; i <= times; i++) { //输出1到times之间的每个整数
            c.setRadius(i); //修改c 对象的半径值
            //c.r = i; 两个都可以
            System.out.println(c.r + " \t" + c.findArea());
        }
    }
}